package Collection;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

/**
 * 数组转换为List集合.
 * 数组的工具类Arrays提供了一个静态方法asList,可以将一个数组转换为一个List集合
 *
 */
public class ArrayToListDemo {
    public static void main(String[] args) {
        String [] array ={"one","two","three","four","five"};
        System.out.println("Array:"+Arrays.toString(array));
        List<String> list =Arrays.asList(array);
        System.out.println("list:"+list);
        //对该集合的操作就是对原数组对应的操作
        list.set(1,"six");
        System.out.println("list"+list);
        System.out.println("Array:"+Arrays.toString(array));
        /*
            由于数组是定长的,因此对集合增删元素会导致对数组进行同等操作,
            这时会抛出异常:
            UnsupportedOperationException
            Unsupported:不支持的
            Operation:操作
         */
//        list.add("seven");
        /*
            如果有增删需求,则需要另外创建一个集合,并先将数组转换的集合内容导入后
            方可进行.
         */
//        List<String> list1 = new ArrayList<>();
//        list1.addAll(list);
        List<String> list1 = new ArrayList<>(list);
        System.out.println("list1:"+list1);
        list1.add("seven");
        System.out.println("list1:"+list1);
    }
}
